package com.example.mycarofcountry.entity.dao;

import android.database.sqlite.SQLiteDatabase;

import java.util.Map;

import de.greenrobot.dao.AbstractDao;
import de.greenrobot.dao.AbstractDaoSession;
import de.greenrobot.dao.identityscope.IdentityScopeType;
import de.greenrobot.dao.internal.DaoConfig;

import com.example.mycarofcountry.entity.dao.Recommend_Focusing;
import com.example.mycarofcountry.entity.dao.Recommend_Newslist;
import com.example.mycarofcountry.entity.dao.Recommend_Evaluating;
import com.example.mycarofcountry.entity.dao.Recommend_News;
import com.example.mycarofcountry.entity.dao.Recommend_Vehiclelist;
import com.example.mycarofcountry.entity.dao.Recommend_Technologylist;
import com.example.mycarofcountry.entity.dao.Forum_total;
import com.example.mycarofcountry.entity.dao.ReduceDealer;
import com.example.mycarofcountry.entity.dao.ReduceCarList;
import com.example.mycarofcountry.entity.dao.JingXuanList;
import com.example.mycarofcountry.entity.dao.FamousList;

import com.example.mycarofcountry.entity.dao.Recommend_FocusingDao;
import com.example.mycarofcountry.entity.dao.Recommend_NewslistDao;
import com.example.mycarofcountry.entity.dao.Recommend_EvaluatingDao;
import com.example.mycarofcountry.entity.dao.Recommend_NewsDao;
import com.example.mycarofcountry.entity.dao.Recommend_VehiclelistDao;
import com.example.mycarofcountry.entity.dao.Recommend_TechnologylistDao;
import com.example.mycarofcountry.entity.dao.Forum_totalDao;
import com.example.mycarofcountry.entity.dao.ReduceDealerDao;
import com.example.mycarofcountry.entity.dao.ReduceCarListDao;
import com.example.mycarofcountry.entity.dao.JingXuanListDao;
import com.example.mycarofcountry.entity.dao.FamousListDao;

// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT.

/**
 * {@inheritDoc}
 * 
 * @see de.greenrobot.dao.AbstractDaoSession
 */
public class DaoSession extends AbstractDaoSession {

    private final DaoConfig recommend_FocusingDaoConfig;
    private final DaoConfig recommend_NewslistDaoConfig;
    private final DaoConfig recommend_EvaluatingDaoConfig;
    private final DaoConfig recommend_NewsDaoConfig;
    private final DaoConfig recommend_VehiclelistDaoConfig;
    private final DaoConfig recommend_TechnologylistDaoConfig;
    private final DaoConfig forum_totalDaoConfig;
    private final DaoConfig reduceDealerDaoConfig;
    private final DaoConfig reduceCarListDaoConfig;
    private final DaoConfig jingXuanListDaoConfig;
    private final DaoConfig famousListDaoConfig;

    private final Recommend_FocusingDao recommend_FocusingDao;
    private final Recommend_NewslistDao recommend_NewslistDao;
    private final Recommend_EvaluatingDao recommend_EvaluatingDao;
    private final Recommend_NewsDao recommend_NewsDao;
    private final Recommend_VehiclelistDao recommend_VehiclelistDao;
    private final Recommend_TechnologylistDao recommend_TechnologylistDao;
    private final Forum_totalDao forum_totalDao;
    private final ReduceDealerDao reduceDealerDao;
    private final ReduceCarListDao reduceCarListDao;
    private final JingXuanListDao jingXuanListDao;
    private final FamousListDao famousListDao;

    public DaoSession(SQLiteDatabase db, IdentityScopeType type, Map<Class<? extends AbstractDao<?, ?>>, DaoConfig>
            daoConfigMap) {
        super(db);

        recommend_FocusingDaoConfig = daoConfigMap.get(Recommend_FocusingDao.class).clone();
        recommend_FocusingDaoConfig.initIdentityScope(type);

        recommend_NewslistDaoConfig = daoConfigMap.get(Recommend_NewslistDao.class).clone();
        recommend_NewslistDaoConfig.initIdentityScope(type);

        recommend_EvaluatingDaoConfig = daoConfigMap.get(Recommend_EvaluatingDao.class).clone();
        recommend_EvaluatingDaoConfig.initIdentityScope(type);

        recommend_NewsDaoConfig = daoConfigMap.get(Recommend_NewsDao.class).clone();
        recommend_NewsDaoConfig.initIdentityScope(type);

        recommend_VehiclelistDaoConfig = daoConfigMap.get(Recommend_VehiclelistDao.class).clone();
        recommend_VehiclelistDaoConfig.initIdentityScope(type);

        recommend_TechnologylistDaoConfig = daoConfigMap.get(Recommend_TechnologylistDao.class).clone();
        recommend_TechnologylistDaoConfig.initIdentityScope(type);

        forum_totalDaoConfig = daoConfigMap.get(Forum_totalDao.class).clone();
        forum_totalDaoConfig.initIdentityScope(type);

        reduceDealerDaoConfig = daoConfigMap.get(ReduceDealerDao.class).clone();
        reduceDealerDaoConfig.initIdentityScope(type);

        reduceCarListDaoConfig = daoConfigMap.get(ReduceCarListDao.class).clone();
        reduceCarListDaoConfig.initIdentityScope(type);

        jingXuanListDaoConfig = daoConfigMap.get(JingXuanListDao.class).clone();
        jingXuanListDaoConfig.initIdentityScope(type);

        famousListDaoConfig = daoConfigMap.get(FamousListDao.class).clone();
        famousListDaoConfig.initIdentityScope(type);

        recommend_FocusingDao = new Recommend_FocusingDao(recommend_FocusingDaoConfig, this);
        recommend_NewslistDao = new Recommend_NewslistDao(recommend_NewslistDaoConfig, this);
        recommend_EvaluatingDao = new Recommend_EvaluatingDao(recommend_EvaluatingDaoConfig, this);
        recommend_NewsDao = new Recommend_NewsDao(recommend_NewsDaoConfig, this);
        recommend_VehiclelistDao = new Recommend_VehiclelistDao(recommend_VehiclelistDaoConfig, this);
        recommend_TechnologylistDao = new Recommend_TechnologylistDao(recommend_TechnologylistDaoConfig, this);
        forum_totalDao = new Forum_totalDao(forum_totalDaoConfig, this);
        reduceDealerDao = new ReduceDealerDao(reduceDealerDaoConfig, this);
        reduceCarListDao = new ReduceCarListDao(reduceCarListDaoConfig, this);
        jingXuanListDao = new JingXuanListDao(jingXuanListDaoConfig, this);
        famousListDao = new FamousListDao(famousListDaoConfig, this);

        registerDao(Recommend_Focusing.class, recommend_FocusingDao);
        registerDao(Recommend_Newslist.class, recommend_NewslistDao);
        registerDao(Recommend_Evaluating.class, recommend_EvaluatingDao);
        registerDao(Recommend_News.class, recommend_NewsDao);
        registerDao(Recommend_Vehiclelist.class, recommend_VehiclelistDao);
        registerDao(Recommend_Technologylist.class, recommend_TechnologylistDao);
        registerDao(Forum_total.class, forum_totalDao);
        registerDao(ReduceDealer.class, reduceDealerDao);
        registerDao(ReduceCarList.class, reduceCarListDao);
        registerDao(JingXuanList.class, jingXuanListDao);
        registerDao(FamousList.class, famousListDao);
    }
    
    public void clear() {
        recommend_FocusingDaoConfig.getIdentityScope().clear();
        recommend_NewslistDaoConfig.getIdentityScope().clear();
        recommend_EvaluatingDaoConfig.getIdentityScope().clear();
        recommend_NewsDaoConfig.getIdentityScope().clear();
        recommend_VehiclelistDaoConfig.getIdentityScope().clear();
        recommend_TechnologylistDaoConfig.getIdentityScope().clear();
        forum_totalDaoConfig.getIdentityScope().clear();
        reduceDealerDaoConfig.getIdentityScope().clear();
        reduceCarListDaoConfig.getIdentityScope().clear();
        jingXuanListDaoConfig.getIdentityScope().clear();
        famousListDaoConfig.getIdentityScope().clear();
    }

    public Recommend_FocusingDao getRecommend_FocusingDao() {
        return recommend_FocusingDao;
    }

    public Recommend_NewslistDao getRecommend_NewslistDao() {
        return recommend_NewslistDao;
    }

    public Recommend_EvaluatingDao getRecommend_EvaluatingDao() {
        return recommend_EvaluatingDao;
    }

    public Recommend_NewsDao getRecommend_NewsDao() {
        return recommend_NewsDao;
    }

    public Recommend_VehiclelistDao getRecommend_VehiclelistDao() {
        return recommend_VehiclelistDao;
    }

    public Recommend_TechnologylistDao getRecommend_TechnologylistDao() {
        return recommend_TechnologylistDao;
    }

    public Forum_totalDao getForum_totalDao() {
        return forum_totalDao;
    }

    public ReduceDealerDao getReduceDealerDao() {
        return reduceDealerDao;
    }

    public ReduceCarListDao getReduceCarListDao() {
        return reduceCarListDao;
    }

    public JingXuanListDao getJingXuanListDao() {
        return jingXuanListDao;
    }

    public FamousListDao getFamousListDao() {
        return famousListDao;
    }

}
